home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Creative Computers
/
Creative Computers CD-ROM, Volume 1 (Legendary Design Technologies, Inc.)(1994).iso
/
shareware
/
telecom
/
term_4.1
/
documentation
/
xpr_libs
/
xprkermit.doc
< prev
next >
Wrap
Text File
|
1994-11-17
|
27KB
|
544 lines
XPR Kermit
Version 2.30
February 14, 1993
Frank da Cruz - Columbia University
Stephen R. Walton - Cal State Northridge
This is an implentation of an External Protocol (XPR) library for the
Kermit file transfer protocol. In keeping with the Kermit documents,
here is a list of the items supported and not supported.
XPR Kermit Capabilities At A Glance:
Local operation: Yes
Remote operation: Yes
Transfer text files: Yes
Transfer binary files: Yes
International text: No
Wildcard send: Yes, if supported by comm program
File transfer interruption: Yes
Filename collision actions: Yes
Can time out: Yes
8th-bit prefixing: Yes
Repeat count prefixing: Yes
Alternate block checks: Yes
Automatic parity detection: No
Dynamic packet length: Yes
CONNECT mode: *
Terminal emulation: *
Key mapping: *
Communication settings: *
Transmit BREAK: *
Support for dialout modems: *
TCP/IP support: *
X.25 support: *
IBM mainframe communication: *
Transaction logging: No
Session logging: No
Debug logging: No
Packet logging: No
Act as server: No
Talk to server: Yes
Advanced server functions: No
Security for server: No
Local file management: N/A
Command/Init files: N/A
Long packets: Yes
Sliding Windows: Yes
File attributes packets: Yes, but limited by XPR protocol
Command macros: *
Script programming language: *
Raw file transmit and capture: *
The items marked with a '*' above are those which are to be provided by
the calling terminal emulation program. Notice that, although XPR
Kermit itself cannot be a "Kermit server," often the communication
program's scripting capability will allow XPR Kermit to be used for the
unattended transfer of files between the Amiga and a remote machine.
I. Introduction
---------------
XPR Kermit implements the Kermit file transfer protocol in the form of
an Amiga External Protocol (XPR) library. This allows the addition of
an up-to-date version of the Kermit protocol to any communications
program which supports the XPR specification. For further information
on Kermit, read the book "Kermit: A File Transfer Protocol" by Frank
da Cruz, 1986, Digital Press.
Please note that this document assumes you already have some
understanding of what the Kermit protocol is, and how to use it. I
have tried to include a few hints about common problems, but there is
no substitute for obtaining and using a copy of the documentation for
the Kermit on the other system to which you will be talking. In
addition, two commercial books are available. "Kermit: A File
Transfer Protocol" by Frank da Cruz describes the protocol in some
detail. While aimed at those writing a Kermit program, it contains a
good deal of useful information about Kermit itself. "C Kermit" by
Christine Gianone and Frank da Cruz, is a wealth of good introductory
information about any version of Kermit. In addition, the latter book
is also the documentation for the standalone version of C Kermit which
is available for the Amiga.
The Kermit protocol, and XPR Kermit, are copyright by Columbia
University. XPR Kermit is subject to the same restrictions as any
other version of Kermit. In particular, XPR Kermit may be included as
part of a commercial package, provided the cost of said package is not
increased as a result.
I cannot resist saying a few words in support of Kermit. Unlike many
other file transfer protocols such as the X/Y/ZMODEM family, the design
of the Kermit protocol started with the assumption that communication
lines are unreliable and quirky. Kermit's slightly lower efficiency on
good lines is more than compensated for by the fact that it can often
successfully transfer files under conditions where other protocols
fail. It can transfer binary files over a seven-bit-wide communication
line, or one which "eats" most control characters; in fact, only two
binary characters, the start-of-packet and end-of-packet markers, need
be passed unchanged by the line.
II. Installation
-----------------
To install XPR Kermit, simply copy the file "xprkermit.library" to your
LIBS: directory, and request your comm program to use XPRKERMIT as its
external file transfer protocol.
XPR Kermit supports Version 2.0 of the XPR Protocol specification. For
more details on this, I recommend that you find a copy of the XPR
Zmodem library, version 2.0. Its documentation contains a good deal of
the justification and philosophy of external protocol libraries, which
I won't repeat here. Among the programs supporting the XPR
specification are the commercial programs A-Talk III and JRComm and the
free programs VLT, Term, and NComm.
III. Setting Options
--------------------
XPR Kermit supports the parts of the Kermit protocol outlined in the
table above. There are currently nine user-settable parameters in XPR
Kermit, which cover the parameters which are most often necessary to
customize. If your communications problem is especially severe--for
example, your method of connection to another system swallows
characters which are special to Kermit, such as control-A--you may
need to get a copy of the stand-alone Kermit program, C Kermit for the
Amiga, distributed via many paths. The current version is 5A(189).
There are actually two sets of "setup" parameters in XPR Kermit. The
first set are commands which XPR Kermit can send to a remote Kermit
server. These are not actually setups, but are in fact commands to XPR
Kermit which cause it to communicate with a remote Kermit server. The
fourth command in this group is "Change Options," which causes no
communication. Instead, you are requested for changes in the current
values of the parameters which Kermit will use for communication.
These items can be set in one of two ways. One method is with a simple
character string which is sent to XPR Kermit by the comm program; this
string will hereafter be referred to as the "init string." This is
generally done if an environment variable named XPRKERMIT exists and
has a value, in which case XPR Kermit is sent the value when you first
select XPR Kermit as your protocol. Some comm programs also allow an
initialization string to be sent in other ways, such as from a script;
VLT, for example, has an INITXPR script command. The format of this
string is specified by the external protocol.
The second, more elegant method, is with some type of requester or set
of requesters. In this case, you will be presented by your comm
program with a set of Intuition gadgets of some type which allow the
choice of XPR Kermit commands and the setting of the options.
However, the string method has the advantage of giving one the ability
to change external protocol settings non-interactively, such as from a
script. In the case of XPR Kermit, such a script can actually command
XPR Kermit to perform communication. One obvious use of this is to
transfer an entire directory tree from your Amiga to a remote machine:
you can make the remote Kermit a server and command it to perform the
appropriate CD commands, then transfer files.
The currently supported XPR Kermit server commands are listed below.
The format of the init string is in parentheses, generally simply a
single letter.
Kermit Finish (F): Tells a Kermit server that you are done. The
remote server will stop being a server.
Kermit Bye (B): Tells a Kermit server that you are done; the server
will exit and log you off the remote machine.
Kermit CD (C{dir}): Change the default directo